<!DOCTYPE html>
<html>
<head>
	<meta charset="UTF-8">
	<title>SpiderFlow</title>
	<link rel="stylesheet" href="js/layui/css/layui.css" />
	<link rel="stylesheet" id="theSkin" />
	<link rel="stylesheet" href="css/index.css" />
	<script>SPIDER_FLOW_VERSION = '1.0'</script>
	<script type="text/javascript" src="js/layui/layui.all.js" ></script>
	<script type="text/javascript" src="js/index.js" ></script>
</head>
<body class="layui-layout layui-layout-admin">
<div class="layui-header">
	<div class="layui-logo">数博采集平台 </div>
	<ul class="layui-nav layui-layout-left"></ul>
	<ul class="layui-nav layui-layout-right">
		<li class="layui-nav-item">
			<a href="javascript:;" style="padding: 0 20px;">
				换肤
			</a>
			<dl class="layui-nav-child">
				<dd><a data-value="layui-blue">默认</a></dd>
				<dd><a data-value="layui-black-gray">黑色</a></dd>
			</dl>
		</li>
		<!-- 新增退出登录按钮 -->
		<li class="layui-nav-item">
			<a href="javascript:;" id="logoutBtn" style="padding: 0 20px;">
				退出登录
			</a>
		</li>
	</ul>
</div>
<!--<div class="layui-side">-->
<!--	<div class="layui-side-scroll menu-list">-->
<!--		<ul class="layui-nav layui-nav-tree">-->
<!--			<li class="layui-nav-item layui-nav-itemed layui-this"><a data-link="spiderList.html" title="配置采集任务">配置采集任务</a></li>-->
<!--			<li class="layui-nav-item layui-nav-itemed"><a data-link="variables.html" title="全局变量">全局变量</a></li>-->
<!--			<li class="layui-nav-item layui-nav-itemed"><a data-link="functions.html" title="自定义函数">自定义函数</a></li>-->
<!--			<li class="layui-nav-item layui-nav-itemed"><a data-link="datasources.html" title="通用数据源管理">通用数据源管理</a></li>-->
<!--			<li class="layui-nav-item layui-nav-itemed"><a data-link="scripts.html" title="脚本管理">脚本管理</a></li>-->
<!--			<li class="layui-nav-item layui-nav-itemed"><a data-link="employee.html" title="用户管理">用户管理</a></li>-->
<!--		</ul>-->
<!--	</div>-->
<!--</div>-->
<div class="layui-side">
		<div class="layui-side-scroll menu-list">
			<ul class="layui-nav layui-nav-tree">
				<li class="layui-nav-item layui-nav-itemed layui-this"><a data-link="spiderList.html" title="配置采集任务">配置采集任务</a></li>
				<li class="layui-nav-item layui-nav-itemed"><a data-link="variables.html" title="全局变量">全局变量</a></li>
				<li class="layui-nav-item layui-nav-itemed"><a data-link="functions.html" title="自定义函数">自定义函数</a></li>
				<li class="layui-nav-item layui-nav-itemed">
					<a href="javascript:;" title="数据源管理">数据源管理</a>
					<dl class="layui-nav-child">
						<dd><a data-link="datasources.html" title="通用数据源管理">通用数据源管理</a></dd>
					</dl>
				</li>
				<li class="layui-nav-item layui-nav-itemed"><a data-link="scripts.html" title="脚本管理">脚本管理</a></li>
				<li id="userManagement" class="layui-nav-item layui-nav-itemed"><a data-link="employee.html" title="用户管理">用户管理</a></li>
			</ul>
		</div>
</div>
<div class="layui-body">
	<div class="layui-tab" lay-filter="admin-tab" lay-allowClose="true">
		<ul id="layuiTab" class="layui-tab-title admin-unselect" unselectable="on" lay-allowClose="false">
			<li class="layui-this layui-tab-hidden-close" lay-id="welcome">任务列表</li>
		</ul>
		<div class="layui-tab-content">
			<div class="layui-tab-item layui-show">
				<iframe src="spiderList.html" width="100%" height="100%" scrolling="yes" frameborder="0"></iframe>
			</div>
		</div>
	</div>
</div>
<script>

	// 读取指定名称的cookie值
	function getCookie(name) {
		// 确保name不为空
		if (!name) return null;

		// 标准化name，移除可能的空格
		name = name.trim();

		// 使用document.cookie的split方法更直观地解析
		const cookies = document.cookie.split(';');
		for (let cookie of cookies) {
			// 去除cookie前后空格
			const trimmedCookie = cookie.trim();
			// 检查当前cookie是否匹配目标name
			if (trimmedCookie.startsWith(name + '=')) {
				// 使用decodeURIComponent替代unescape（更安全的解码方式）
				return decodeURIComponent(trimmedCookie.substring(name.length + 1));
			}
		}
		return null;
	}


	// 如果获取到cookie值，则调用后端接口验证
	document.addEventListener('DOMContentLoaded', function() {
		// 获取cookie中的administrator值
		var userRole = getCookie("administrator");
		console.log(userRole);
		// 获取用户管理菜单元素
		var userManagement = document.getElementById("userManagement");

		// 先默认隐藏用户管理菜单
		if (userManagement) {
			userManagement.style.display = "none";
		}

		// 如果获取到cookie值，则调用后端接口验证
		if (userRole && userManagement) {
			$.ajax({
				url: '/employee/verifyIdentity',          // 目标验证接口
				method: 'POST',               // 和登录接口一致的POST方法
				contentType: 'application/x-www-form-urlencoded', // 表单格式（非JSON）
				data: { employeeUid: userRole }, // 直接传普通字段，无需JSON.stringify
				dataType: 'json',             // 和登录接口一致的响应格式
				xhrFields: {
					withCredentials: true     // 跨域场景下保留cookie（和登录逻辑一致）
				},
				success: function(resp) {
					// 假设后端返回{code: 1}表示验证通过（管理员）
					if (resp.code === 1) {
						userManagement.style.display = "block";
					} else {
						userManagement.style.display = "none";
						// 可选：打印后端返回的具体原因
						// console.log("非管理员权限：" + resp.message);
					}
				},
				error: function(xhr, status, error) {
					// console.error('验证管理员身份失败：', error);
					userManagement.style.display = "none";  // 出错时默认隐藏
				}
			});
		}
	});


	var title = $(".layui-logo");
	title.append('<span class="version-no">v' + SPIDER_FLOW_VERSION + '</span>');

	// 退出登录功能实现
	layui.use(['layer'], function() {
		var layer = layui.layer;
		var $ = layui.$;

		// 绑定退出登录按钮点击事件
		$('#logoutBtn').on('click', function() {
			// 询问用户是否确认退出
			layer.confirm('确定要退出登录吗？', {
				title: '退出确认',
				icon: 3,
				btn: ['确认', '取消']
			}, function(index) {
				// 关闭确认框
				layer.close(index);

				// 显示加载层
				var loadIndex = layer.load(2);

				// 调用退出登录接口
				$.ajax({
					url: '/logout',  // 后端退出接口地址
					type: 'POST',
					dataType: 'json',
					success: function(res) {
						// 无论后端是否成功，都执行清理操作
						// 清除本地存储的token等信息
						localStorage.removeItem('token');
						localStorage.removeItem('userInfo');

						// 跳转到登录页面
						window.location.href = 'login.html';
					},
					error: function() {
						// 接口调用失败也执行清理并跳转
						localStorage.removeItem('token');
						localStorage.removeItem('userInfo');
						window.location.href = 'login.html';
					},
					complete: function() {
						// 关闭加载层
						layer.close(loadIndex);
					}
				});
			});
		});
	});
</script>
</body>
</html>
